package com.spark.lola.logistics.vo;

import com.alibaba.excel.annotation.ExcelProperty;
import com.alibaba.excel.annotation.format.DateTimeFormat;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModelProperty;
import lombok.Getter;
import lombok.Setter;

import java.math.BigDecimal;
import java.util.*;

/**
 * @author: Zhi-peng wang
 * @date: 2020/06/12 15:01
 **/
@Getter
@Setter
public class ExpensesAnalyzeVo {

    private Long id;

    private Long orderId;

    @ApiModelProperty(name = "no", value = "流水号")
    @ExcelProperty("流水号")
    private String no;

    @ApiModelProperty(name = "driverName", value = "申请人")
    @ExcelProperty("申请人")
    private String driverName;

    @ApiModelProperty(name = "borrowingAmount", value = "借款金额")
    @ExcelProperty("借款金额")
    private BigDecimal borrowingAmount;

    @ApiModelProperty(name = "borrowingTime", value = "借款时间")
    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
    @DateTimeFormat("yyyy-MM-dd")
    @ExcelProperty("借款时间")
    private Date borrowingTime;

    @ApiModelProperty(name = "carNo", value = "车牌号")
    @ExcelProperty("车牌号")
    private String carNo;

    @ApiModelProperty(name = "semitrailerNo", value = "挂车牌号")
    @ExcelProperty("挂车牌号")
    private String semitrailerNo;

    @ApiModelProperty(name = "startArea", value = "发货地")
    @ExcelProperty("发货地")
    private String startArea;

    @ApiModelProperty(name = "endArea", value = "目的地")
    @ExcelProperty("目的地")
    private String endArea;

    @ApiModelProperty(name = "productName", value = "货品名称")
    @ExcelProperty("货品名称")
    private String productName;

    @ApiModelProperty(name = "productWeight", value = "货品重量（吨）")
    @ExcelProperty("货品重量（吨）")
    private String productWeight;

    @ApiModelProperty(name = "preMileage", value = "上次里程数（km）")
    private Integer preMileage;

    @ApiModelProperty(name = "nowMileage", value = "本次里程数（km）")
    private Integer nowMileage;

    @ApiModelProperty(name = "mileage", value = "里程数（km）")
    @ExcelProperty("行驶里程（km）")
    private Integer mileage;

    @ApiModelProperty(name = "fuelConsumption", value = "加油量（L）")
    @ExcelProperty("加油量（L）")
    private BigDecimal fuelConsumption;

    @ApiModelProperty(name = "fuelPrice", value = "燃油单价（元/L）")
    @ExcelProperty("燃油单价（元/L）")
    private BigDecimal fuelPrice;

    @ApiModelProperty(name = "fuelTotal", value = "加油金额（元/L）")
    @ExcelProperty("加油金额（元/L）")
    private BigDecimal fuelTotal;

    @ApiModelProperty(name = "reimbursementDate", value = "报账日期")
    @ExcelProperty("报账日期")
    private Date reimbursementDate;

    @ApiModelProperty(name = "expensesDetailVoList", value = "费用信息")
    List<ExpensesDetailVo> expensesDetailVoList = new ArrayList<>();

}
